/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.hd2tecnologia.modeloBanco;

import com.hd2tecnologia.banco.AcessoBanco;
import com.mysql.jdbc.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;


public class LocalidadesModel extends AcessoBanco{
    
    AcessoBanco dados = AcessoBanco.getInstance();
    public static LocalidadesModel instance;
    
    public ArrayList<String> getEstados() throws SQLException{
        
        ArrayList<String> Estados = new ArrayList<String>();
        
        dados.conectar();
        
        PreparedStatement Stmt;
        ResultSet rs;
        
        String query = "SELECT DISTINCT(uf) AS UF FROM tb_cidades ORDER BY uf ASC";
        
        Stmt = (PreparedStatement) dados.conectar().prepareStatement(query);
        
        rs = Stmt.executeQuery();
        
        while(rs.next()){
           Estados.add(rs.getString("UF"));
        }

        dados.desconectar();
        Stmt.close();
        rs.close();
        
        return Estados;
        
    }    
    
    public ArrayList<String> getCidades(String UF) throws SQLException{
        
        ArrayList<String> Cidades = new ArrayList<String>();
        
        dados.conectar();
        
        PreparedStatement Stmt;
        ResultSet rs;
        
        String query = "SELECT nome FROM `tb_cidades` WHERE uf = '"+UF+"' ORDER BY nome ASC";
        
        Stmt = (PreparedStatement) dados.conectar().prepareStatement(query);
        
        rs = Stmt.executeQuery();
        
        while(rs.next()){
           Cidades.add(rs.getString("nome"));
        }

        dados.desconectar();
        Stmt.close();
        rs.close();
        
        return Cidades;
        
    }
    
    public static LocalidadesModel getInstance() {
        if (instance == null) {
            instance = new LocalidadesModel();
        }
        return instance;
    }

    public static void kilInstance() {
        instance = null;
    }    
    
}
